package com.lancoo.edu.platform.operation.commons.domain.api.user;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import java.io.Serializable;

/**
 * @author lzh
 * @Description: 对外提供接口--获取在线用户信息响应实体
 */
@Data
@JsonInclude(JsonInclude.Include.NON_NULL)
public class OnlineUserInfo implements Serializable {
    @JsonProperty(value = "UserID")
    @JSONField(name = "UserID")
    private String userId;

    @JsonProperty(value = "UserName")
    @JSONField(name = "UserName")
    private String userName;

    @JsonProperty(value = "Gender")
    @JSONField(name = "Gender")
    private String gender;

    @JsonProperty(value = "GradeID")
    @JSONField(name = "GradeID")
    private String gradeId;

    @JsonProperty(value = "GradeName")
    @JSONField(name = "GradeName")
    private String gradeName;

    @JsonProperty(value = "GroupID")
    @JSONField(name = "GroupID")
    private String groupID;

    @JsonProperty(value = "GroupName")
    @JSONField(name = "GroupName")
    private String groupName;

    @JsonProperty(value = "UserType")
    @JSONField(name = "UserType")
    private String userType;

    @JsonProperty(value = "UserClass")
    @JSONField(name = "UserClass")
    private String userClass;

    @JsonProperty(value = "PhotoPath")
    @JSONField(name = "PhotoPath")
    private String photoPath;

    @JsonProperty(value = "PreLoginTime")
    @JSONField(name = "PreLoginTime")
    private String preLoginTime;

    @JsonProperty(value = "PreLoginIP")
    @JSONField(name = "PreLoginIP")
    private String preLoginIP;

    @JsonProperty(value = "ShortName")
    @JSONField(name = "ShortName")
    private String shortName;

    @JsonProperty(value = "Sign")
    @JSONField(name = "Sign")
    private String sign;

    @JsonProperty(value = "SchoolID")
    @JSONField(name = "EduId")
    private String eduID;

    /**
     * 教育局名称
     */
    @JsonProperty(value = "EduName")
    @JSONField(name = "EduName")
    private String eduName;

    @JsonProperty(value = "UpdateTime")
    @JSONField(name = "UpdateTime")
    private String updateTime;

    @JsonProperty(value = "SubjectIDs")
    @JSONField(name = "SubjectIDs")
    private String subjectIDs;

    @JsonProperty(value = "SubjectNames")
    @JSONField(name = "SubjectNames")
    private String subjectNames;

    @JsonProperty(value = "LoginInfo")
    @JSONField(name = "LoginInfo")
    private String loginInfo;

    @JsonProperty(value = "SchoolName")
    @JSONField(name = "SchoolName")
    private String schoolName;

    @JsonProperty(value = "GlobalGrade")
    @JSONField(name = "GlobalGrade")
    private String globalGrade;

    @JsonProperty(value = "StudyLevel")
    @JSONField(name = "StudyLevel")
    private String studyLevel;

    @JsonProperty(value = "LockerState")
    @JSONField(name = "LockerState")
    private String lockerState;

    @JsonProperty(value = "Share_Token")
    @JSONField(name = "Share_Token")
    private String shareToken;

    @JsonProperty(value = "CityID")
    @JSONField(name = "CityID")
    private String cityId;

    @JsonProperty(value = "CountyName")
    @JSONField(name = "CountyName")
    private String countyName;

    @JsonProperty(value = "SchoolUrl")
    @JSONField(name = "SchoolUrl")
    private String schoolUrl;

    @JsonProperty(value = "ProvinceID")
    @JSONField(name = "ProvinceID")
    private String provinceID;

    @JsonProperty(value = "ProvinceName")
    @JSONField(name = "ProvinceName")
    private String provinceName;

}
